// 云函数入口文件
const cloud = require('wx-server-sdk')

// 处理搜索页面关键词的匹配
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})
const db = cloud.database();
const _ = db.command;

// 云函数入口函数
exports.main = async (event, context) => {
  return db.collection('publish')
  .where(_.or([
    // 第一个匹配对象 省市区
    {
      provinces:db.RegExp({
        regexp:'.*' + event.keyword,
        options:'i'
      })
    },
    // 第二个匹配对象 详细地址
    {
      detailAddress:db.RegExp({
        regexp:'.*' + event.keyword,
        options:'i'
      })
    },
    // 第三个匹配对象 标题
    {
      title:db.RegExp({
        regexp:'.*' + event.keyword,
        options:'i'
      })
    },
    // 第四个匹配对象 分类
    {
      classify:db.RegExp({
        regexp:'.*' + event.keyword,
        options:'i'
      })
    },
    // 第五个匹配对象 票种
    {
      ticket:db.RegExp({
        regexp:'.*' + event.keyword,
        options:'i'
      })
    },
    // 第六个匹配对象 主办方
    {
      host:db.RegExp({
        regexp:'.*' + event.keyword,
        options:'i'
      })
    }
  ]).and([{
    status:0
  }]))
  .orderBy('time','desc')
  .get()
}